﻿using System.Collections.Generic;
using System.Net.Mail;
using WebService3.MerchantService;

namespace WebService3
{
	public interface IGLKServiceImplementation
	{
		IEnumerable<Product> GetProducts();

		Product GetBalanceProduct();

		void UpdateOrderState(glk_Order order, registerOrderResult regResult);
		
		glk_Order CreateOrder(int userID, IEnumerable<Product> selectedProducts, out IList<Product> products);

		int CreateClient(string email);

		int GetClientByEmail(string email);

        void SavePaymentResult(orderStatusResponse bankResponse, ref OrderInfo orderInfo);

		MailMessage GetMessage(string email, IEnumerable<Product> products);

        OrderInfo CheckOrderState(string bankOrderID);

        OrderInfo GetOrderData(int orderID);
	}
}